package de.cbf.cam.dsa.tavern.carte.ui.interfaces;

import java.awt.event.ActionListener;
import java.util.Iterator;

import de.cbf.cam.dsa.tavern.carte.model.entities.interfaces.IEditableEntity;

public interface ICompositeEntities {
		
	public IEditableEntity  	getSelectedEntity(); 
	/**
	 * @return selected objects or <code>null</code> if none is selected
	 */
	public IEditableEntity[] 	getSelectedEntities();
	public void 				setSelectedEntity(IEditableEntity value)
										throws IllegalArgumentException ;
	public void					setEntities(Iterator<IEditableEntity> iterator);
	
	public boolean	registerSelectionListener	 (ActionListener listener);	
	public boolean	deRegisterSelectionListener	 (ActionListener listener);
	
	public boolean	registerDoubleClickListener	 (ActionListener listener);	
	public boolean	deRegisterDoubleClickListener(ActionListener listener);	
}
